使用列表更新java hibernate实体
我需要在hibernate中更新实体,比如
class EntityA {
private String name
//one-to-many, orhpan removal = true, bidirectioanl
private List<EntityB> listB;
}
我从RESTAPI接收对象,需要更新listB中的项和实体A的名称
可以更新/删除/添加列表中的项目
从hibernate的角度来看,这方面的最佳实践是什么
# 1 楼答案
第一件事是您使用http请求调用的表示资源的格式
如果您的资源格式是json,那么您需要将json对象映射到java对象,并使用JPA进行管理
示例:
假设您的json格式资源包含以下名为user_info的用户数据。json
您的用户pojo类是:
有很多json库,我个人更喜欢谷歌开发的Gson。 所以使用Gson可以将json对象映射到java对象。以下是关于将json映射到java对象的代码片段:
您已经完成了映射。您所要做的就是根据EntityManager操作执行用户对象
注意:映射期间,用户类状态必须与json键字符串匹配
若资源格式是XML,那个么JAXB是将对象编组和解编组为XML的强大功能,反之亦然
更新:要将联系人集合更新到数据库,我们不需要逐个添加元素。Java集合具有方法调用addAll()。只是使用它。以下是一个例子:
就这样。您不需要逐个添加联系人
希望这次知识转移能对你有所帮助。谢谢